'''
Description: 
Author: Zilu
Date: 2021-11-15 10:04:44
Version: 
LastEditTime: 2021-11-15 10:29:38
LastEditors: Zilu
'''

# python支持多种图形界面的第三方库，包括：
# Tk 
# wxWidgets
# QT 
# GTK
# Python自带的库是支持Tk的Tkinter，使用Tkinter，无需安装任何包
from tkinter import *
import tkinter.messagebox as messagebox

# frame 是所有Widget的父容器
class Application(Frame):
    def __init__(self, master=None):
        Frame.__init__(self, master)
        self.pack()
        self.createWidgets()

    def createWidgets(self):
        self.helloLabel = Label(self, text='Hello, world')
        self.helloLabel.pack()
        # 使用文本框输入和消息框显示
        self.nameInput = Entry(self)
        self.nameInput.pack()
        self.alterButton = Button(self, text='Hello', command=self.hello)
        self.alterButton.pack()
        self.quitButton = Button(self, text='Quit', command=self.quit)
        self.quitButton.pack()

    def hello(self):
        name = self.nameInput.get() or 'world'
        messagebox.showinfo('Message', 'Hello, %s' % name)

# pack() 方法把widgets加入父容器
# 创建对象的同时打开窗口
app = Application()
# 设置窗口标题
app.master.title('Hello World')
# 主消息循环
app.mainloop()



